<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:tns="http://schemas.datacontract.org/2004/07/SharedObjects" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/SharedObjects" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://development.virtual.home:81/Registration.svc?xsd=xsd3" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:import schemaLocation="http://development.virtual.home:81/Registration.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:complexType name="ArrayOfCorporation">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Corporation" nillable="true" type="tns:Corporation" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfCorporation" nillable="true" type="tns:ArrayOfCorporation" />
  <xs:complexType name="Corporation">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="IsDefault" type="xs:boolean" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="TopLevelDomain" nillable="true" type="tns:Tld" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Corporation" nillable="true" type="tns:Corporation" />
  <xs:complexType name="EntityBase">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:unsignedLong" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="EntityBase" nillable="true" type="tns:EntityBase" />
  <xs:complexType name="StoryTask">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:StoryBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="LaunchConditions" nillable="true" type="tns:ArrayOfObjectiveCondition" />
          <xs:element minOccurs="0" name="Objectives" nillable="true" type="tns:ArrayOfStoryTaskObjective" />
          <xs:element minOccurs="0" name="State" type="tns:TaskState" />
          <xs:element minOccurs="0" name="StoryArc" nillable="true" type="tns:StoryArc" />
          <xs:element minOccurs="0" name="Target" nillable="true" type="tns:StoryTaskTarget" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="StoryTask" nillable="true" type="tns:StoryTask" />
  <xs:complexType name="StoryBase">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Description" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Title" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="StoryBase" nillable="true" type="tns:StoryBase" />
  <xs:complexType name="Gateway">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="ComputerSystem" nillable="true" type="tns:ComputerSystem" />
          <xs:element minOccurs="0" name="GatewayBlueprint" nillable="true" type="tns:GatewayBlueprint" />
          <xs:element minOccurs="0" name="InstalledCpus" nillable="true" type="tns:ArrayOfCpu" />
          <xs:element minOccurs="0" name="InstalledMemory" nillable="true" type="tns:ArrayOfMemoryType" />
          <xs:element minOccurs="0" name="InstalledNics" nillable="true" type="tns:ArrayOfNetworkAdapter" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Gateway" nillable="true" type="tns:Gateway" />
  <xs:complexType name="ComputerSystem">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Accounts" nillable="true" type="tns:ArrayOfComputerSystemAccount" />
          <xs:element minOccurs="0" name="AlwaysInvisible" type="xs:boolean" />
          <xs:element minOccurs="0" name="AlwaysVisible" type="xs:boolean" />
          <xs:element minOccurs="0" name="ComputerSystemFeatures" nillable="true" type="tns:ArrayOfComputerSystemFeature" />
          <xs:element minOccurs="0" name="ComputerSystemLogs" nillable="true" type="tns:ArrayOfComputerSystemLog" />
          <xs:element minOccurs="0" name="Corporation" nillable="true" type="tns:Corporation" />
          <xs:element minOccurs="0" name="DifficultyLevel" type="xs:int" />
          <xs:element minOccurs="0" name="IsDefaultBankServer" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsDefaultEmailServer" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsGatewayCentral" type="xs:boolean" />
          <xs:element minOccurs="0" name="MaintenanceInterval" type="xs:double" />
          <xs:element minOccurs="0" name="MapX" type="xs:double" />
          <xs:element minOccurs="0" name="MapY" type="xs:double" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="NetworkAddress" nillable="true" type="tns:NetworkAddress" />
          <xs:element minOccurs="0" name="RootDirectory" nillable="true" type="tns:SystemDirectory" />
          <xs:element minOccurs="0" name="SecuritySystem" nillable="true" type="tns:ArrayOfSecuritySystem" />
          <xs:element minOccurs="0" name="TrustedConnectionOnly" type="xs:boolean" />
          <xs:element minOccurs="0" name="Visibility" type="tns:SystemVisibility" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ComputerSystem" nillable="true" type="tns:ComputerSystem" />
  <xs:complexType name="ArrayOfComputerSystemAccount">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ComputerSystemAccount" nillable="true" type="tns:ComputerSystemAccount" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfComputerSystemAccount" nillable="true" type="tns:ArrayOfComputerSystemAccount" />
  <xs:complexType name="ComputerSystemAccount">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="CreationTime" type="xs:dateTime" />
          <xs:element minOccurs="0" name="Credentials" nillable="true" type="tns:ArrayOfCredential" />
          <xs:element minOccurs="0" name="IsDefault" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsTemporary" type="xs:boolean" />
          <xs:element minOccurs="0" name="Username" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ComputerSystemAccount" nillable="true" type="tns:ComputerSystemAccount" />
  <xs:complexType name="ArrayOfCredential">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Credential" nillable="true" type="tns:Credential" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfCredential" nillable="true" type="tns:ArrayOfCredential" />
  <xs:complexType name="Credential">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Credential" nillable="true" type="tns:Credential" />
  <xs:complexType name="GatewayBlueprint">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="BasePrice" type="xs:long" />
          <xs:element minOccurs="0" name="IsDefault" type="xs:boolean" />
          <xs:element minOccurs="0" name="MaxAllowedBandwidth" type="xs:double" />
          <xs:element minOccurs="0" name="MaxAllowedCpuSpeed" type="xs:double" />
          <xs:element minOccurs="0" name="MaxAllowedMemorySize" type="xs:int" />
          <xs:element minOccurs="0" name="MaxBandwidth" type="xs:double" />
          <xs:element minOccurs="0" name="MaxCpuSpeed" type="xs:double" />
          <xs:element minOccurs="0" name="MaxMemorySize" type="xs:int" />
          <xs:element minOccurs="0" name="MinimumMarketDifficulty" type="xs:int" />
          <xs:element minOccurs="0" name="Modifier" type="xs:double" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="NumCpuSlots" type="xs:int" />
          <xs:element minOccurs="0" name="NumMemorySlots" type="xs:int" />
          <xs:element minOccurs="0" name="NumNicSlots" type="xs:int" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="GatewayBlueprint" nillable="true" type="tns:GatewayBlueprint" />
  <xs:complexType name="Fragment">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="FunctionName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Fragment" nillable="true" type="tns:Fragment" />
  <xs:complexType name="NetworkAddress">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="ClassA" type="xs:unsignedByte" />
          <xs:element minOccurs="0" name="ClassB" type="xs:unsignedByte" />
          <xs:element minOccurs="0" name="ClassC" type="xs:unsignedByte" />
          <xs:element minOccurs="0" name="ClassD" type="xs:unsignedByte" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="NetworkAddress" nillable="true" type="tns:NetworkAddress" />
  <xs:complexType name="NetworkAdapter">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="BasePrice" type="xs:long" />
          <xs:element minOccurs="0" name="IsDefault" type="xs:boolean" />
          <xs:element minOccurs="0" name="MinimumMarketDifficulty" type="xs:int" />
          <xs:element minOccurs="0" name="Modifier" type="xs:double" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="NetworkAdapter" nillable="true" type="tns:NetworkAdapter" />
  <xs:complexType name="ErrorLog">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="AgentId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="StackTrace" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="TimeStamp" type="xs:dateTime" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ErrorLog" nillable="true" type="tns:ErrorLog" />
  <xs:complexType name="ProgramCategory">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ProgramCategory" nillable="true" type="tns:ProgramCategory" />
  <xs:complexType name="ProgramFile">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:SystemFile">
        <xs:sequence>
          <xs:element minOccurs="0" name="AllowModify" type="xs:boolean" />
          <xs:element minOccurs="0" name="BasePrice" type="xs:int" />
          <xs:element minOccurs="0" name="BasePriceOverride" type="xs:int" />
          <xs:element minOccurs="0" name="Program" nillable="true" type="tns:Program" />
          <xs:element minOccurs="0" name="Version" type="xs:int" />
          <xs:element minOccurs="0" name="VersionOverride" type="xs:int" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ProgramFile" nillable="true" type="tns:ProgramFile" />
  <xs:complexType name="SystemFile">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="CompressionLevel" type="xs:int" />
          <xs:element minOccurs="0" name="Content" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="CopyOf" nillable="true" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="DeleteLevel" type="xs:int" />
          <xs:element minOccurs="0" name="DisplaySize" type="xs:int" />
          <xs:element minOccurs="0" name="EncryptionLevel" type="xs:int" />
          <xs:element minOccurs="0" name="IsCopyProtected" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsLocked" type="xs:boolean" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ParentId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="Size" type="xs:int" />
          <xs:element minOccurs="0" name="Time" type="xs:dateTime" />
          <xs:element minOccurs="0" name="Type" type="tns:FileType" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="SystemFile" nillable="true" type="tns:SystemFile" />
  <xs:simpleType name="FileType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Program" />
      <xs:enumeration value="RainbowtableFile" />
      <xs:enumeration value="Fingerprint" />
      <xs:enumeration value="Retina" />
      <xs:enumeration value="Dna" />
      <xs:enumeration value="Psec" />
      <xs:enumeration value="Tbpa" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="FileType" nillable="true" type="tns:FileType" />
  <xs:complexType name="UsernamePasswordCredential">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Credential">
        <xs:sequence>
          <xs:element minOccurs="0" name="Password" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Username" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="UsernamePasswordCredential" nillable="true" type="tns:UsernamePasswordCredential" />
  <xs:complexType name="SecuritySystem">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:ComputerSystemFeature">
        <xs:sequence>
          <xs:element minOccurs="0" name="BaseBypassTime" type="xs:int" />
          <xs:element minOccurs="0" name="CredentialType" type="tns:CredentialType" />
          <xs:element minOccurs="0" name="DifficultyIdentifier" type="xs:int" />
          <xs:element minOccurs="0" name="MethodName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Version" type="xs:int" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="SecuritySystem" nillable="true" type="tns:SecuritySystem" />
  <xs:complexType name="ComputerSystemFeature">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="HackedOnly" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsActive" type="xs:boolean" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ComputerSystemFeature" nillable="true" type="tns:ComputerSystemFeature" />
  <xs:complexType name="SystemDirectory">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ParentDirectory" nillable="true" type="tns:SystemDirectory" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="SystemDirectory" nillable="true" type="tns:SystemDirectory" />
  <xs:complexType name="UserProgram">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="CreationDate" type="xs:dateTime" />
          <xs:element minOccurs="0" name="FragmentsUsed" nillable="true" type="tns:ArrayOfUserProgramFragment" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="UserProgram" nillable="true" type="tns:UserProgram" />
  <xs:complexType name="ArrayOfUserProgramFragment">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="UserProgramFragment" nillable="true" type="tns:UserProgramFragment" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfUserProgramFragment" nillable="true" type="tns:ArrayOfUserProgramFragment" />
  <xs:complexType name="UserProgramFragment">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="UsedFragment" nillable="true" type="tns:Fragment" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="UserProgramFragment" nillable="true" type="tns:UserProgramFragment" />
  <xs:complexType name="WorldData">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="LastStartup" type="xs:dateTime" />
          <xs:element minOccurs="0" name="WorldTime" type="xs:dateTime" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="WorldData" nillable="true" type="tns:WorldData" />
  <xs:complexType name="EmailAccount">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Emails" nillable="true" type="tns:ArrayOfEmailHeader" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="SystemId" type="xs:unsignedLong" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="EmailAccount" nillable="true" type="tns:EmailAccount" />
  <xs:complexType name="ArrayOfEmailHeader">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="EmailHeader" nillable="true" type="tns:EmailHeader" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfEmailHeader" nillable="true" type="tns:ArrayOfEmailHeader" />
  <xs:complexType name="EmailHeader">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="BCCs" nillable="true" type="q1:ArrayOfstring" />
          <xs:element xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="CCs" nillable="true" type="q2:ArrayOfstring" />
          <xs:element minOccurs="0" name="CreationTimestamp" type="xs:dateTime" />
          <xs:element minOccurs="0" name="EmailBodyId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="Folder" type="tns:EmailFolder" />
          <xs:element minOccurs="0" name="From" nillable="true" type="xs:string" />
          <xs:element xmlns:q3="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="Recipients" nillable="true" type="q3:ArrayOfstring" />
          <xs:element minOccurs="0" name="Status" type="tns:EmailMessageStatus" />
          <xs:element minOccurs="0" name="Subject" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="EmailHeader" nillable="true" type="tns:EmailHeader" />
  <xs:simpleType name="EmailFolder">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Inbox" />
      <xs:enumeration value="Sent" />
      <xs:enumeration value="Spam" />
      <xs:enumeration value="Trash" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="EmailFolder" nillable="true" type="tns:EmailFolder" />
  <xs:simpleType name="EmailMessageStatus">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Unread" />
      <xs:enumeration value="Read" />
      <xs:enumeration value="RepliedTo" />
      <xs:enumeration value="ForwardedTo" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="EmailMessageStatus" nillable="true" type="tns:EmailMessageStatus" />
  <xs:complexType name="EmailBody">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element xmlns:q4="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="AttachmentIds" nillable="true" type="q4:ArrayOfunsignedLong" />
          <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="EmailBody" nillable="true" type="tns:EmailBody" />
  <xs:complexType name="ShortEmailAccountInfo">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ShortEmailAccountInfo" nillable="true" type="tns:ShortEmailAccountInfo" />
  <xs:complexType name="BankAccount">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="AccountNumber" type="xs:long" />
          <xs:element minOccurs="0" name="CachedAmount" type="xs:long" />
          <xs:element minOccurs="0" name="IsInvisible" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsSystem" type="xs:boolean" />
          <xs:element minOccurs="0" name="SystemId" type="xs:unsignedLong" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="BankAccount" nillable="true" type="tns:BankAccount" />
  <xs:complexType name="BankTransaction">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Amount" type="xs:long" />
          <xs:element minOccurs="0" name="Purpose" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ReceivingAccountId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="SendingAccountId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="TransactionTimeStamp" type="xs:dateTime" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="BankTransaction" nillable="true" type="tns:BankTransaction" />
  <xs:complexType name="StoryArc">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:StoryBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="CreationDate" type="xs:dateTime" />
          <xs:element minOccurs="0" name="CreatorId" type="xs:unsignedLong" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="StoryArc" nillable="true" type="tns:StoryArc" />
  <xs:complexType name="Agent">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="BankAccounts" nillable="true" type="tns:ArrayOfBankAccount" />
          <xs:element minOccurs="0" name="ComputerSystemAccounts" nillable="true" type="tns:ArrayOfComputerSystemAccount" />
          <xs:element xmlns:q5="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="ComputerSystemIds" nillable="true" type="q5:ArrayOfunsignedLong" />
          <xs:element minOccurs="0" name="Corporation" nillable="true" type="tns:Corporation" />
          <xs:element minOccurs="0" name="DisplayName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="EmailAccounts" nillable="true" type="tns:ArrayOfEmailAccount" />
          <xs:element minOccurs="0" name="Gateway" nillable="true" type="tns:Gateway" />
          <xs:element xmlns:q6="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="OwnedHardware" nillable="true" type="q6:ArrayOfanyType" />
          <xs:element minOccurs="0" name="SavedConnections" nillable="true" type="tns:ArrayOfSavedConnection" />
          <xs:element minOccurs="0" name="UsenetAccount" nillable="true" type="tns:UsenetAccount" />
          <xs:element minOccurs="0" name="UserPrograms" nillable="true" type="tns:ArrayOfUserProgram" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Agent" nillable="true" type="tns:Agent" />
  <xs:complexType name="ArrayOfBankAccount">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="BankAccount" nillable="true" type="tns:BankAccount" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfBankAccount" nillable="true" type="tns:ArrayOfBankAccount" />
  <xs:complexType name="ArrayOfEmailAccount">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="EmailAccount" nillable="true" type="tns:EmailAccount" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfEmailAccount" nillable="true" type="tns:ArrayOfEmailAccount" />
  <xs:complexType name="ArrayOfSavedConnection">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="SavedConnection" nillable="true" type="tns:SavedConnection" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSavedConnection" nillable="true" type="tns:ArrayOfSavedConnection" />
  <xs:complexType name="SavedConnection">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element xmlns:q7="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="Route" nillable="true" type="q7:ArrayOfunsignedLong" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="SavedConnection" nillable="true" type="tns:SavedConnection" />
  <xs:complexType name="StoryTaskObjective">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:StoryBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="IsComplete" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsSuccess" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsVisible" type="xs:boolean" />
          <xs:element minOccurs="0" name="ObjectId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="ObjectType" type="tns:ObjectiveObjectType" />
          <xs:element minOccurs="0" name="Parameter" nillable="true" type="tns:ArrayOfObjectiveActionParameter" />
          <xs:element minOccurs="0" name="RequiredAction" type="tns:ObjectiveAction" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="StoryTaskObjective" nillable="true" type="tns:StoryTaskObjective" />
  <xs:simpleType name="ObjectiveObjectType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="File" />
      <xs:enumeration value="Record" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ObjectiveObjectType" nillable="true" type="tns:ObjectiveObjectType" />
  <xs:complexType name="ArrayOfObjectiveActionParameter">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ObjectiveActionParameter" nillable="true" type="tns:ObjectiveActionParameter" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfObjectiveActionParameter" nillable="true" type="tns:ArrayOfObjectiveActionParameter" />
  <xs:complexType name="ObjectiveActionParameter">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ParameterType" type="tns:ObjectiveActionParameterType" />
          <xs:element minOccurs="0" name="Value" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ObjectiveActionParameter" nillable="true" type="tns:ObjectiveActionParameter" />
  <xs:simpleType name="ObjectiveActionParameterType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="SetRecordField" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ObjectiveActionParameterType" nillable="true" type="tns:ObjectiveActionParameterType" />
  <xs:complexType name="Account">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="AccountStatus" type="tns:AccountStatus" />
          <xs:element minOccurs="0" name="Agent" nillable="true" type="tns:Agent" />
          <xs:element minOccurs="0" name="HasLoggedIn" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsAdmin" type="xs:boolean" />
          <xs:element minOccurs="0" name="Login" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Password" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="RegistrationDateReal" type="xs:dateTime" />
          <xs:element minOccurs="0" name="RegistrationDateWorld" type="xs:dateTime" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Account" nillable="true" type="tns:Account" />
  <xs:simpleType name="AccountStatus">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Active" />
      <xs:enumeration value="TempBanned" />
      <xs:enumeration value="PermBanned" />
      <xs:enumeration value="Unpaid" />
      <xs:enumeration value="Incomplete" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="AccountStatus" nillable="true" type="tns:AccountStatus" />
  <xs:complexType name="Bypasser">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Program">
        <xs:sequence>
          <xs:element minOccurs="0" name="BypassableSecuritySystem" type="xs:unsignedLong" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Bypasser" nillable="true" type="tns:Bypasser" />
  <xs:complexType name="Program">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="AllowModification" type="xs:boolean" />
          <xs:element minOccurs="0" name="BasePrice" type="xs:long" />
          <xs:element minOccurs="0" name="Category" nillable="true" type="tns:ProgramCategory" />
          <xs:element minOccurs="0" name="InterfaceId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="IsAdminOnly" type="xs:boolean" />
          <xs:element minOccurs="0" name="IsDefault" type="xs:boolean" />
          <xs:element minOccurs="0" name="MethodName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="MinimumDifficulty" type="xs:int" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Size" type="xs:int" />
          <xs:element minOccurs="0" name="SpeedModifier" type="xs:double" />
          <xs:element minOccurs="0" name="SpeedType" type="tns:SpeedType" />
          <xs:element minOccurs="0" name="Version" type="xs:int" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Program" nillable="true" type="tns:Program" />
  <xs:simpleType name="SpeedType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Bandwidth" />
      <xs:enumeration value="Cpu" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="SpeedType" nillable="true" type="tns:SpeedType" />
  <xs:complexType name="ClientConfiguration">
    <xs:sequence>
      <xs:element minOccurs="0" name="CorporationId" type="xs:unsignedLong" />
      <xs:element minOccurs="0" name="GatewayId" type="xs:unsignedLong" />
      <xs:element minOccurs="0" name="Ip" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="MyKnownComputers" nillable="true" type="tns:ArrayOfSmallComputerSystem" />
      <xs:element minOccurs="0" name="RootDirectoryId" type="xs:unsignedLong" />
      <xs:element minOccurs="0" name="ServiceUri" nillable="true" type="xs:anyURI" />
      <xs:element minOccurs="0" name="SessionId" type="ser:guid" />
      <xs:element minOccurs="0" name="SocketHost" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SocketPort" type="xs:int" />
      <xs:element minOccurs="0" name="SystemId" type="xs:unsignedLong" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ClientConfiguration" nillable="true" type="tns:ClientConfiguration" />
  <xs:complexType name="ArrayOfSmallComputerSystem">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="SmallComputerSystem" nillable="true" type="tns:SmallComputerSystem" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSmallComputerSystem" nillable="true" type="tns:ArrayOfSmallComputerSystem" />
  <xs:complexType name="SmallComputerSystem">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="AlwaysInvisible" type="xs:boolean" />
          <xs:element minOccurs="0" name="Corporation" nillable="true" type="tns:Corporation" />
          <xs:element minOccurs="0" name="IsGatewayCentral" type="xs:boolean" />
          <xs:element minOccurs="0" name="MapX" type="xs:double" />
          <xs:element minOccurs="0" name="MapY" type="xs:double" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="SmallComputerSystem" nillable="true" type="tns:SmallComputerSystem" />
  <xs:complexType name="MemoryType">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="BasePrice" type="xs:long" />
          <xs:element minOccurs="0" name="IsDefault" type="xs:boolean" />
          <xs:element minOccurs="0" name="MinimumMarketDifficulty" type="xs:int" />
          <xs:element minOccurs="0" name="Modifier" type="xs:double" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="MemoryType" nillable="true" type="tns:MemoryType" />
  <xs:complexType name="ReadableComputerSystemLog">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Activity" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ConnectingSystemAddress" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="DeleteLevel" type="xs:int" />
          <xs:element minOccurs="0" name="LoggingComputerSystemId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="ModifiedItem" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="TimeStamp" type="xs:dateTime" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ReadableComputerSystemLog" nillable="true" type="tns:ReadableComputerSystemLog" />
  <xs:complexType name="Tld">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Tld" nillable="true" type="tns:Tld" />
  <xs:complexType name="Cpu">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="BasePrice" type="xs:long" />
          <xs:element minOccurs="0" name="IsDefault" type="xs:boolean" />
          <xs:element minOccurs="0" name="MinimumMarketDifficulty" type="xs:int" />
          <xs:element minOccurs="0" name="Modifier" type="xs:double" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Cpu" nillable="true" type="tns:Cpu" />
  <xs:complexType name="CredentialFile">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:SystemFile">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="CredentialFile" nillable="true" type="tns:CredentialFile" />
  <xs:complexType name="DnaCredential">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:FileCredential">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="DnaCredential" nillable="true" type="tns:DnaCredential" />
  <xs:complexType name="FileCredential">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Credential">
        <xs:sequence>
          <xs:element minOccurs="0" name="ReferenceFile" nillable="true" type="tns:CredentialFile" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="FileCredential" nillable="true" type="tns:FileCredential" />
  <xs:complexType name="FingerprintCredential">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:FileCredential">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="FingerprintCredential" nillable="true" type="tns:FingerprintCredential" />
  <xs:complexType name="RetinalScanCredential">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:FileCredential">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="RetinalScanCredential" nillable="true" type="tns:RetinalScanCredential" />
  <xs:simpleType name="ObjectiveAction">
    <xs:restriction base="xs:string">
      <xs:enumeration value="BreakAndEnter" />
      <xs:enumeration value="CopyFile" />
      <xs:enumeration value="DeleteFile" />
      <xs:enumeration value="PlaceFile" />
      <xs:enumeration value="CreateRecord" />
      <xs:enumeration value="ModifyRecord" />
      <xs:enumeration value="DeleteRecord" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ObjectiveAction" nillable="true" type="tns:ObjectiveAction" />
  <xs:complexType name="UsenetAccount">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="AccountStatus" type="tns:UsenetAccountStatus" />
          <xs:element minOccurs="0" name="EmailAccountId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="IsAdmin" type="xs:boolean" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="UsenetAccount" nillable="true" type="tns:UsenetAccount" />
  <xs:simpleType name="UsenetAccountStatus">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Active" />
      <xs:enumeration value="Banned" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="UsenetAccountStatus" nillable="true" type="tns:UsenetAccountStatus" />
  <xs:complexType name="ArrayOfUserProgram">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="UserProgram" nillable="true" type="tns:UserProgram" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfUserProgram" nillable="true" type="tns:ArrayOfUserProgram" />
  <xs:simpleType name="CredentialType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="UsernamePassword" />
      <xs:enumeration value="Fingerprint" />
      <xs:enumeration value="Retinal" />
      <xs:enumeration value="Dna" />
      <xs:enumeration value="Psec" />
      <xs:enumeration value="Tbpa" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="CredentialType" nillable="true" type="tns:CredentialType" />
  <xs:complexType name="ArrayOfComputerSystemFeature">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ComputerSystemFeature" nillable="true" type="tns:ComputerSystemFeature" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfComputerSystemFeature" nillable="true" type="tns:ArrayOfComputerSystemFeature" />
  <xs:complexType name="ArrayOfComputerSystemLog">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ComputerSystemLog" nillable="true" type="tns:ComputerSystemLog" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfComputerSystemLog" nillable="true" type="tns:ArrayOfComputerSystemLog" />
  <xs:complexType name="ComputerSystemLog">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Activity" type="tns:LoggingAction" />
          <xs:element minOccurs="0" name="ConnectingSystemAddress" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="DeleteLevel" type="xs:int" />
          <xs:element minOccurs="0" name="LoggingComputerSystemId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="ModifiedItem" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="TimeStamp" type="xs:dateTime" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ComputerSystemLog" nillable="true" type="tns:ComputerSystemLog" />
  <xs:simpleType name="LoggingAction">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Routed" />
      <xs:enumeration value="Connect" />
      <xs:enumeration value="Bypass" />
      <xs:enumeration value="BypassFailed" />
      <xs:enumeration value="Login" />
      <xs:enumeration value="Disconnect" />
      <xs:enumeration value="FileRead" />
      <xs:enumeration value="FileCreated" />
      <xs:enumeration value="FileDeleted" />
      <xs:enumeration value="FileModified" />
      <xs:enumeration value="FileRestored" />
      <xs:enumeration value="FeatureAccess" />
      <xs:enumeration value="LogDeleted" />
      <xs:enumeration value="LogRestored" />
      <xs:enumeration value="HackEmailAccounts" />
      <xs:enumeration value="HackBankAccounts" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="LoggingAction" nillable="true" type="tns:LoggingAction" />
  <xs:complexType name="ArrayOfSecuritySystem">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="SecuritySystem" nillable="true" type="tns:SecuritySystem" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSecuritySystem" nillable="true" type="tns:ArrayOfSecuritySystem" />
  <xs:simpleType name="SystemVisibility">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Visible" />
      <xs:enumeration value="LanVisible" />
      <xs:enumeration value="AdminVisible" />
      <xs:enumeration value="Invisible" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="SystemVisibility" nillable="true" type="tns:SystemVisibility" />
  <xs:complexType name="ArrayOfCpu">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Cpu" nillable="true" type="tns:Cpu" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfCpu" nillable="true" type="tns:ArrayOfCpu" />
  <xs:complexType name="ArrayOfMemoryType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="MemoryType" nillable="true" type="tns:MemoryType" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfMemoryType" nillable="true" type="tns:ArrayOfMemoryType" />
  <xs:complexType name="ArrayOfNetworkAdapter">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="NetworkAdapter" nillable="true" type="tns:NetworkAdapter" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfNetworkAdapter" nillable="true" type="tns:ArrayOfNetworkAdapter" />
  <xs:complexType name="ArrayOfObjectiveCondition">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ObjectiveCondition" nillable="true" type="tns:ObjectiveCondition" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfObjectiveCondition" nillable="true" type="tns:ArrayOfObjectiveCondition" />
  <xs:complexType name="ObjectiveCondition">
    <xs:sequence>
      <xs:element minOccurs="0" name="MustBeCompleted" type="xs:boolean" />
      <xs:element minOccurs="0" name="MustBeSuccessful" type="xs:boolean" />
      <xs:element minOccurs="0" name="Objective" nillable="true" type="tns:StoryTaskObjective" />
      <xs:element minOccurs="0" name="TaskId" nillable="true" type="tns:StoryTask" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ObjectiveCondition" nillable="true" type="tns:ObjectiveCondition" />
  <xs:complexType name="ArrayOfStoryTaskObjective">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="StoryTaskObjective" nillable="true" type="tns:StoryTaskObjective" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfStoryTaskObjective" nillable="true" type="tns:ArrayOfStoryTaskObjective" />
  <xs:simpleType name="TaskState">
    <xs:restriction base="xs:string">
      <xs:enumeration value="StartingTask" />
      <xs:enumeration value="UnknownToPlayer" />
      <xs:enumeration value="InProgress" />
      <xs:enumeration value="CompleteFailed" />
      <xs:enumeration value="CompleteSuccess" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="TaskState" nillable="true" type="tns:TaskState" />
  <xs:complexType name="StoryTaskTarget">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:EntityBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="TargetId" type="xs:unsignedLong" />
          <xs:element minOccurs="0" name="TargetType" type="tns:TaskTargetType" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="StoryTaskTarget" nillable="true" type="tns:StoryTaskTarget" />
  <xs:simpleType name="TaskTargetType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Dynamic" />
      <xs:enumeration value="Static" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="TaskTargetType" nillable="true" type="tns:TaskTargetType" />
</xs:schema>